Swift Payment OptionF
The swiftPayementOptionF API enables to process the transaction with transaction information in MT103 format with 50F tag (Ordering Customer – Identifier Code), which the receiving banks can easily interpret the transaction information.
Method: POST
{{localCEUrl}}/analytics/rest/eventApi/event
Headers
Name | Value |
---|---|
Content-Type | application/json |
Example
Payload Parameters
Parameter | Description |
---|---|
mt103 Mandatory | String SWIFT payment message for cross border payments that contains 50F tag Example – "MT103 details" |
Risk Optional | Object |
PaymentContextCode Optional | String Additional information about the context of a payment transaction Example – "" |
MachineFingerPrint Optional | Object |
IpAddress Optional | String IP address of the device from which the transaction is initiated Example – "192.168.0.1" |
MacAddress Optional | String Unique identifier assigned to a network interface controller Example – "00-00-00-00-00-00-00" |
OperatingSystem Optional | String Operating system of the device Example – "Mac OS" |
WebBrowser Optional | String Web browser used for transaction Example – "Chrome" |
SessionId Optional | String Unique identifier that a web server assigns to a user for the duration of the current session Example – "00000000000000000" |
- cURL
- C#
- Go
- NodeJs
curl --location --globoff '{{localCEUrl}}/analytics/rest/eventApi/event' \
--header 'Content-Type: application/json' \
--data '{"mt103":"{1:F01BCMRMXMMAXXX0000000000}\n{2:I103USBBUS44XXXXN}\n{4:\n:20:USB_SWIFT_018\n:23B:CRED\n:32A:200521USD530,00\n:33B:USD510,00\n:50F:/12345678\n1/SMITH JOHN\n2/299, PARK AVENUE\n3/US/NEW YORK,NY 10017\n:53B:/200192588424191\n:57D://FW021000021\n:59:/633285529\nMIKE JONES\n123 AVENUE A\nNEW YORK, NY 10036\nCNY\n:70:Remittance Payment\n:71A:OUR\n-}","Risk":{"PaymentContextCode":"","MachineFingerPrint":{"IpAddress":"192.168.0.1","MacAddress":"00-00-00-00-00-00-00","OperatingSystem":"Mac OS","WebBrowser":"Chrome","SessionId":"00000000000000000"}}}'
var options = new RestClientOptions("{{localCEUrl}}/analytics/rest/eventApi/event")
{
MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("", Method.Post);
request.AddHeader("Content-Type", "application/json");
var body = @"{
" + "\n" +
@" ""mt103"": ""{1:F01BCMRMXMMAXXX0000000000}\n{2:I103USBBUS44XXXXN}\n{4:\n:20:USB_SWIFT_018\n:23B:CRED\n:32A:200521USD530,00\n:33B:USD510,00\n:50F:/12345678\n1/SMITH JOHN\n2/299, PARK AVENUE\n3/US/NEW YORK,NY 10017\n:53B:/200192588424191\n:57D://FW021000021\n:59:/633285529\nMIKE JONES\n123 AVENUE A\nNEW YORK, NY 10036\nCNY\n:70:Remittance Payment\n:71A:OUR\n-}"",
" + "\n" +
@" ""Risk"": {
" + "\n" +
@" ""PaymentContextCode"": """",
" + "\n" +
@" ""MachineFingerPrint"": {
" + "\n" +
@" ""IpAddress"": ""192.168.0.1"",
" + "\n" +
@" ""MacAddress"": ""00-00-00-00-00-00-00"",
" + "\n" +
@" ""OperatingSystem"": ""Mac OS"",
" + "\n" +
@" ""WebBrowser"": ""Chrome"",
" + "\n" +
@" ""SessionId"": ""00000000000000000""
" + "\n" +
@" }
" + "\n" +
@" }
" + "\n" +
@"}";
request.AddStringBody(body, DataFormat.Json);
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "{{localCEUrl}}/analytics/rest/eventApi/event"
method := "POST"
payload := strings.NewReader(`{`+"
"+`
"mt103": "{1:F01BCMRMXMMAXXX0000000000}\n{2:I103USBBUS44XXXXN}\n{4:\n:20:USB_SWIFT_018\n:23B:CRED\n:32A:200521USD530,00\n:33B:USD510,00\n:50F:/12345678\n1/SMITH JOHN\n2/299, PARK AVENUE\n3/US/NEW YORK,NY 10017\n:53B:/200192588424191\n:57D://FW021000021\n:59:/633285529\nMIKE JONES\n123 AVENUE A\nNEW YORK, NY 10036\nCNY\n:70:Remittance Payment\n:71A:OUR\n-}",`+"
"+`
"Risk": {`+"
"+`
"PaymentContextCode": "",`+"
"+`
"MachineFingerPrint": {`+"
"+`
"IpAddress": "192.168.0.1",`+"
"+`
"MacAddress": "00-00-00-00-00-00-00",`+"
"+`
"OperatingSystem": "Mac OS",`+"
"+`
"WebBrowser": "Chrome",`+"
"+`
"SessionId": "00000000000000000"`+"
"+`
}`+"
"+`
}`+"
"+`
}`)
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var https = require('follow-redirects').https;
var fs = require('fs');
var options = {
'method': 'POST',
'hostname': '{{localCEUrl}}',
'path': '/analytics/rest/eventApi/event',
'headers': {
'Content-Type': 'application/json'
},
'maxRedirects': 20
};
var req = https.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function (chunk) {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
res.on("error", function (error) {
console.error(error);
});
});
var postData = JSON.stringify({
"mt103": "{1:F01BCMRMXMMAXXX0000000000}\n{2:I103USBBUS44XXXXN}\n{4:\n:20:USB_SWIFT_018\n:23B:CRED\n:32A:200521USD530,00\n:33B:USD510,00\n:50F:/12345678\n1/SMITH JOHN\n2/299, PARK AVENUE\n3/US/NEW YORK,NY 10017\n:53B:/200192588424191\n:57D://FW021000021\n:59:/633285529\nMIKE JONES\n123 AVENUE A\nNEW YORK, NY 10036\nCNY\n:70:Remittance Payment\n:71A:OUR\n-}",
"Risk": {
"PaymentContextCode": "",
"MachineFingerPrint": {
"IpAddress": "192.168.0.1",
"MacAddress": "00-00-00-00-00-00-00",
"OperatingSystem": "Mac OS",
"WebBrowser": "Chrome",
"SessionId": "00000000000000000"
}
}
});
req.write(postData);
req.end();
Body
{
"mt103": "{1:F01BCMRMXMMAXXX0000000000}{2:I103USBBUS44XXXXN}{4::20:USB_SWIFT_018:23B:CRED:32A:200521USD530,00:33B:USD510,00:50F:/123456781/SMITH JOHN2/299, PARK AVENUE3/US/NEW YORK,NY 10017:53B:/200192588424191:57D://FW021000021:59:/633285529MIKE JONES123 AVENUE ANEW YORK, NY 10036CNY:70:Remittance Payment:71A:OUR-}",
"Risk": {
"PaymentContextCode": "",
"MachineFingerPrint": {
"IpAddress": "192.168.0.1",
"MacAddress": "00-00-00-00-00-00-00",
"OperatingSystem": "Mac OS",
"WebBrowser": "Chrome",
"SessionId": "00000000000000000"
}
}
}
Response: 200
Payload Parameters
Parameter | Description |
---|---|
id | String ID of the request Example – "da3d4b2a-b685-4edc-9e8a-55fe2a28d584" |
jsonrpc | String JSON-RPC version used for the API Example – "2.0" |
method | String API method Example – "ce.swift-event" |
result | Object |
resp | String Type of response Example – "event" |
status | String Status of the event Example – "1" |
riskScore | Number Estimated Risk score of the transaction Example – 0 |
signalScore | Number Signal reliability score of the transaction Example – 0 |
scenarioScore | Number Score of specific scenarios related to the transaction event Example – 0 |
tokenScore | Number Score of token authentication used in the transaction Example – 0 |
categoryScore | Number Event category score of transaction Example – 0 |
ofacConfidentScore | Number Estimated score of compliance with OFAC regulations Example – 0 |
matchedScenarios | Object Risk Scenarios that matches for this transaction Example – |
matchedTokens | Null Tokens that matches for this transaction Example – null |
matchedCategories | Object Risk categories that matches for this transaction Example – |
riskDetails | Array Array of various risk details Example – [] |
debtorProfileId | Null Unique ID of debtor profile Example –null |
creditorProfileId | Null Unique ID of creditor profile Example –null |
error | Null Shows information, if any error occurs during transaction Example – null |
{
"id": "da3d4b2a-b685-4edc-9e8a-55fe2a28d584",
"jsonrpc": "2.0",
"method": "ce.swift-event",
"result": {
"resp": "event",
"status": "1",
"riskScore": 0,
"signalScore": 0,
"scenarioScore": 0,
"tokenScore": 0,
"categoryScore": 0,
"ofacConfidentScore": 0,
"matchedScenarios": {},
"matchedTokens": null,
"matchedCategories": {},
"riskDetails": [],
"debtorProfileId": null,
"creditorProfile": null
},
"error": null
}